logical implication in discrete mathematics